﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;

namespace Com.JunCaiSoft.Common.IDao
{
    public interface IUpdateDao<T> : IDataCoreAccessObject<T> where T : class, new()
    {
        int Update(T t);
        int Update(T t, object id);
        int Update(Expression<Func<T, bool>> where, Dictionary<string, object> dic);

        int Update<TEntity>(TEntity t) where TEntity : class, new();
        int Update<TEntity>(TEntity t, object id) where TEntity : class, new();
        int Update<TEntity>(Expression<Func<TEntity, bool>> where, Dictionary<string, object> dic) where TEntity : class, new();
    }
}
